#include "Moon.h"
using namespace std;
class Planet
{
private:
	double _x,_y,_z,_radius;//XYZ coordinates and planet radius
	float spin,_speed;// rotation angle and the values used to change the rotation angle
	Moon moons[4];// vector to store the moons 
	GLUquadric *planet;
    GLuint planetTexture; //used to store planettextures
	string path[10]; // textures paths
	char *tag; // planet name
	int texNr;// texture number
public:
	int nrMoons; // number of moons
	Planet(void);
	Planet(double x, double y, double z,double r,float _speed,int nr);
	~Planet(void);
	void Planet::init();//initialize textures
	void Planet::draw();//draw the planets
	void Planet::Spin();//set the spin angle
	void moon(int k,double x, double y,double z,double r,double speedm);//initialize the moons
	void setTextures();//set the textures
	void Planet::setTag(char *s);//set the planet name to be printed
	void Planet::printTag();//print the planet name
	void Planet::drawOrbit();//draw the orbit
	void Planet::updateSpeed(float update);//upgrade the rotation speed on the orbit
	void Planet::ring(float angle,double size);//draw a ring for the planets which have one
};

